package cn.baage.campus.utils;


import cn.baage.campus.constant.BaageConstant;
import com.github.pagehelper.PageInfo;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * @Description: 分页返回对象
 * @Author: 八阿哥
 * @url: baage.cn
 * @Version: 1.0
 **/
@Data
@NoArgsConstructor
public class ResultPage {

    /** 消息状态码 */
    private int code;

    /** 消息内容 */
    private String msg;

    /** 总记录数 */
    private long total;

    /** 列表数据 */
    private List<?> rows;

    /**
     * 分页
     *
     * @param list 列表数据
     * @param total 总记录数
     */
    public static ResultPage success(long total, List<?> list) {
        ResultPage resultPage = new ResultPage();
        resultPage.setCode(BaageConstant.SUCCESS_CODE);
        resultPage.setTotal(total);
        resultPage.setRows(list);
        return resultPage;
    }


    /**
     * 分页
     *
     * @param list 列表数据
     * @return 分页结果
     */
    public static ResultPage success(List<?> list) {
        long total = new PageInfo<Object>(list).getTotal();
        return success(total, list);
    }

}
